home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 July / 07_02.iso / software / xq-xsetup / files / setup.exe / {app} / plugins / XQ Win9x IOS SafeList.xpl < prev    next >
Text File  |  2001-01-21  |  4KB  |  109 lines

  1. "FILE"="Xteq Systems X-Setup Plugin 6.0"
  2. "TYPE"="8"
  3. "COUNT"="2"
  4. "UIPATH 1"="Startup/Shutdown\Startup\Windows 9x/ME\40) Pre-Windows"
  5. "NAME"="IOS SafeList Programs"
  6. "VERSION"="2.11"
  7. "OSVERSION"="10101"
  8. "WARNING"="1"
  9. "LANGUAGE"="VBScript"
  10. "TEXT 1"="Add Item"
  11. "TEXT 2"="Remove item"
  12. "DESCRIPTION 1"="IOS.INI (meaning Initializing Operating System) is a plain text file found in your Win9x/ME folder. However, the lines contained in IOS.INI are a powerful filter for the Operating System."
  13. "DESCRIPTION 2"="Here is how it works:  Win9x/ME boots up, the GUI loads, Windows then loads its 32-bit protected mode disk paging VXDs (virtual eXtended drivers), but needs to know if there is -NO- real DOS mode [16-bit] driver/device/TSR [terminate and stay resident program], that can interfere with 32-bit Windows disk operation.  Some well known and some less known (to Windows 9x/ME) such programs might drive the OS "crazy" - forcing it to start with one of those alert/warning messages that reads something like: "A new MS-DOS resident program named 'CACHDISK' may decrease your system's  performance. Would you like to see more information about this problem?"  The whole "secret" lies in the list found under Ios.ini's [SafeList] section. If one of your "weird" drivers/TSRs loaded in memory from a Config.sys or Autoexec.bat command line is not present on this list, the OS might show a message similar to the one above, and aborts the loading of its 32-bit disk drivers, which causes performance to degrade."
  14. "DESCRIPTION 3"="All you need to do (ONLY if you determined that your particular program WILL NOT interfere with Windows proper operation) is use this plug-in to remove items that you determine are safe to remove."
  15. "DESCRIPTION 4"="Use at your own risk."
  16. "AUTHOR"="Xteq Systems"
  17. "CONTACTURL"="http://www.xteq.com"
  18. "COPYRIGHT"="Copyright ⌐ Xteq Systems - All Rights Reserved"
  19. "COMMENT 1"=" "
  20.  
  21.  
  22.  
  23. sF="IOS.INI"
  24.  
  25. sFile=""
  26. iUICount=0
  27. iStart=0
  28. Dim aryLoc(512) '512 items inside this array should be okay...
  29.  
  30. Sub Plugin_Initialize 
  31.  sFile=GetWinDir & sF
  32.  Call ReloadAll
  33. End Sub
  34.  
  35. Sub ReloadAll
  36.  for i=1 to iUICount
  37.      Call SetUIElement(i,"")
  38.      aryLoc(i)=0
  39.  next 
  40.  
  41.  iUICount=0
  42.  iStart=0
  43.  
  44.  iC=TxtOpen(sFile) 'open file
  45.  iStart=TxtFindLine("[SafeList]",false) 'search for start of section
  46.  
  47.  if iStart>0 then
  48.     'we make an endless loop....
  49.     do while true
  50.       iStart=iStart+1
  51.       s=TxtGetLine(iStart)
  52.       if (left(s,1)<>"[") and (len(s)>0) then
  53.          iUICount=iUICount+1
  54.  
  55.          'safe data for later use
  56.          SetUIElement iUICount,s         
  57.          aryLoc(iUICount)=iStart
  58.          
  59.       else
  60.         'the text starts with "[" -> next section e.g. [UNSAFE] -> exit loop
  61.         exit do
  62.       end if
  63.     loop
  64.  end if
  65.  
  66. End Sub
  67.  
  68.  
  69.  
  70. Sub Plugin_CheckData(ElementIndex)
  71. End Sub
  72.  
  73. Sub Plugin_Apply(ElementIndex,ElementSubIndex)
  74.     '-----------Add Item--------------------
  75.     if ElementIndex=1 then 
  76.        s=InputWindow("Please type in the filename for the new item. (Note: You can add a space and ';' as a comment, e.g. 'blah.dos ;a nice driver')","",1)
  77.        if IsEmpty(s)=false then
  78.            
  79.           'set the text inside the file
  80.           Call TxtInsertLine(iStart,s) 
  81.           'save the file
  82.           Call TxtSave()
  83.           'reload list
  84.           Call ReloadAll 
  85.        end if          
  86.     end if
  87.  
  88.  
  89.     '-----------Remove Item--------------------
  90.     If ElementIndex=2 then 
  91.        if ElementSubIndex>0 then
  92.  
  93.           i=aryLoc(ElementSubIndex)
  94.           Call TxtDeleteLine(i)
  95.           Call TxtSave()
  96.           Call ReloadAll
  97.             
  98.        else
  99.          Call MsgError("Unable to continue - please select an item first")
  100.        end if
  101.     end if
  102. End Sub
  103.  
  104. Sub Plugin_Terminate 
  105. End Sub
  106.  
  107.  
  108.  
  109.